home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 October: Mac OS SDK / Dev.CD Oct 97 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Universal / Interfaces / AIncludes / TextCommon.a < prev    next >
Encoding:
Text File  |  1997-08-12  |  15.9 KB  |  373 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        TextCommon.a
  3. ;
  4. ;    Contains:    Common text types and constants and prototypes for related functions 
  5. ;
  6. ;    Version:    Technology:    Mac OS 8 (Tempo)
  7. ;                Release:    Universal Interfaces 3.0.1
  8. ;
  9. ;    Copyright:    © 1995-1997 by Apple Computer, Inc., all rights reserved.
  10. ;
  11. ;    Bugs?:        Please include the the file and version information (from above) with
  12. ;                the problem description.  Developers belonging to one of the Apple
  13. ;                developer programs can submit bug reports to:
  14. ;
  15. ;                    devsupport@apple.com
  16. ;
  17. ;
  18.     IF &TYPE('__TEXTCOMMON__') = 'UNDEFINED' THEN
  19. __TEXTCOMMON__ SET 1
  20.  
  21.     IF &TYPE('__TYPES__') = 'UNDEFINED' THEN
  22.     include 'Types.a'
  23.     ENDIF
  24.  
  25. ;  LocaleIdentifier is an obsolete Copland typedef, will be removed soon
  26. ; typedef UInt32                         LocaleIdentifier
  27.  
  28. ;  TextEncodingBase type & values 
  29. ;  (values 0-32 correspond to the Script Codes defined in Inside Macintosh: Text pages 6-52 and 6-53 
  30. ; typedef UInt32                         TextEncodingBase
  31.  
  32.  
  33.                                                             ; Mac OS encodings
  34. kTextEncodingMacRoman            EQU        0
  35. kTextEncodingMacJapanese        EQU        1
  36. kTextEncodingMacChineseTrad        EQU        2
  37. kTextEncodingMacKorean            EQU        3
  38. kTextEncodingMacArabic            EQU        4
  39. kTextEncodingMacHebrew            EQU        5
  40. kTextEncodingMacGreek            EQU        6
  41. kTextEncodingMacCyrillic        EQU        7
  42. kTextEncodingMacDevanagari        EQU        9
  43. kTextEncodingMacGurmukhi        EQU        10
  44. kTextEncodingMacGujarati        EQU        11
  45. kTextEncodingMacOriya            EQU        12
  46. kTextEncodingMacBengali            EQU        13
  47. kTextEncodingMacTamil            EQU        14
  48. kTextEncodingMacTelugu            EQU        15
  49. kTextEncodingMacKannada            EQU        16
  50. kTextEncodingMacMalayalam        EQU        17
  51. kTextEncodingMacSinhalese        EQU        18
  52. kTextEncodingMacBurmese            EQU        19
  53. kTextEncodingMacKhmer            EQU        20
  54. kTextEncodingMacThai            EQU        21
  55. kTextEncodingMacLaotian            EQU        22
  56. kTextEncodingMacGeorgian        EQU        23
  57. kTextEncodingMacArmenian        EQU        24
  58. kTextEncodingMacChineseSimp        EQU        25
  59. kTextEncodingMacTibetan            EQU        26
  60. kTextEncodingMacMongolian        EQU        27
  61. kTextEncodingMacEthiopic        EQU        28
  62. kTextEncodingMacCentralEurRoman    EQU        29
  63. kTextEncodingMacVietnamese        EQU        30
  64. kTextEncodingMacExtArabic        EQU        31                    ; The following use script code 0, smRoman
  65. kTextEncodingMacSymbol            EQU        33
  66. kTextEncodingMacDingbats        EQU        34
  67. kTextEncodingMacTurkish            EQU        35
  68. kTextEncodingMacCroatian        EQU        36
  69. kTextEncodingMacIcelandic        EQU        37
  70. kTextEncodingMacRomanian        EQU        38                    ; The following use script code 4, smArabic
  71. kTextEncodingMacFarsi            EQU        $8C                    ; Like MacArabic but uses Farsi digits
  72.                                                             ; The following use script code 7, smCyrillic
  73. kTextEncodingMacUkrainian        EQU        $98                    ; The following use script code 32, smUnimplemented
  74. kTextEncodingMacVT100            EQU        $FC                    ; VT100/102 font from Comm Toolbox: Latin-1 repertoire + box drawing etc
  75.                                                             ; Special Mac OS encodings
  76. kTextEncodingMacHFS                EQU        $FF                    ; Meta-value, should never appear in a table.
  77.                                                             ; Unicode & ISO UCS encodings begin at 0x100
  78. kTextEncodingUnicodeDefault        EQU        $0100                ; Meta-value, should never appear in a table.
  79. kTextEncodingUnicodeV1_1        EQU        $0101
  80. kTextEncodingISO10646_1993        EQU        $0101                ; Code points identical to Unicode 1.1
  81. kTextEncodingUnicodeV2_0        EQU        $0103                ; New location for Korean Hangul
  82.                                                             ; ISO 8-bit and 7-bit encodings begin at 0x200
  83. kTextEncodingISOLatin1            EQU        $0201                ; ISO 8859-1
  84. kTextEncodingISOLatin2            EQU        $0202                ; ISO 8859-2
  85. kTextEncodingISOLatinCyrillic    EQU        $0205                ; ISO 8859-5
  86. kTextEncodingISOLatinArabic        EQU        $0206                ; ISO 8859-6, = ASMO 708, =DOS CP 708
  87. kTextEncodingISOLatinGreek        EQU        $0207                ; ISO 8859-7
  88. kTextEncodingISOLatinHebrew        EQU        $0208                ; ISO 8859-8
  89. kTextEncodingISOLatin5            EQU        $0209                ; ISO 8859-9
  90.                                                             ; MS-DOS & Windows encodings begin at 0x400
  91. kTextEncodingDOSLatinUS            EQU        $0400                ; code page 437
  92. kTextEncodingDOSGreek            EQU        $0405                ; code page 737 (formerly code page 437G)
  93. kTextEncodingDOSBalticRim        EQU        $0406                ; code page 775
  94. kTextEncodingDOSLatin1            EQU        $0410                ; code page 850, "Multilingual"
  95. kTextEncodingDOSGreek1            EQU        $0411                ; code page 851
  96. kTextEncodingDOSLatin2            EQU        $0412                ; code page 852, Slavic
  97. kTextEncodingDOSCyrillic        EQU        $0413                ; code page 855, IBM Cyrillic
  98. kTextEncodingDOSTurkish            EQU        $0414                ; code page 857, IBM Turkish
  99. kTextEncodingDOSPortuguese        EQU        $0415                ; code page 860
  100. kTextEncodingDOSIcelandic        EQU        $0416                ; code page 861
  101. kTextEncodingDOSHebrew            EQU        $0417                ; code page 862
  102. kTextEncodingDOSCanadianFrench    EQU        $0418                ; code page 863
  103. kTextEncodingDOSArabic            EQU        $0419                ; code page 864
  104. kTextEncodingDOSNordic            EQU        $041A                ; code page 865
  105. kTextEncodingDOSRussian            EQU        $041B                ; code page 866
  106. kTextEncodingDOSGreek2            EQU        $041C                ; code page 869, IBM Modern Greek
  107. kTextEncodingDOSThai            EQU        $041D                ; code page 874, also for Windows
  108. kTextEncodingDOSJapanese        EQU        $0420                ; code page 932, also for Windows
  109. kTextEncodingDOSChineseSimplif    EQU        $0421                ; code page 936, also for Windows
  110. kTextEncodingDOSKorean            EQU        $0422                ; code page 949, also for Windows; Unified Hangul Code
  111. kTextEncodingDOSChineseTrad        EQU        $0423                ; code page 950, also for Windows
  112. kTextEncodingWindowsLatin1        EQU        $0500                ; code page 1252
  113. kTextEncodingWindowsANSI        EQU        $0500                ; code page 1252 (alternate name)
  114. kTextEncodingWindowsLatin2        EQU        $0501                ; code page 1250, Central Europe
  115. kTextEncodingWindowsCyrillic    EQU        $0502                ; code page 1251, Slavic Cyrillic
  116. kTextEncodingWindowsGreek        EQU        $0503                ; code page 1253
  117. kTextEncodingWindowsLatin5        EQU        $0504                ; code page 1254, Turkish
  118. kTextEncodingWindowsHebrew        EQU        $0505                ; code page 1255
  119. kTextEncodingWindowsArabic        EQU        $0506                ; code page 1256
  120. kTextEncodingWindowsBalticRim    EQU        $0507                ; code page 1257
  121. kTextEncodingWindowsKoreanJohab    EQU        $0510                ; code page 1361, for Windows NT
  122.                                                             ; Various national standards begin at 0x600
  123. kTextEncodingUS_ASCII            EQU        $0600
  124. kTextEncodingJIS_X0201_76        EQU        $0620
  125. kTextEncodingJIS_X0208_83        EQU        $0621
  126. kTextEncodingJIS_X0208_90        EQU        $0622
  127. kTextEncodingJIS_X0212_90        EQU        $0623
  128. kTextEncodingJIS_C6226_78        EQU        $0624
  129. kTextEncodingGB_2312_80            EQU        $0630
  130. kTextEncodingGBK_95                EQU        $0631                ; annex to GB 13000-93; for Windows 95
  131. kTextEncodingKSC_5601_87        EQU        $0640                ; same as KSC 5601-92 without Johab annex
  132. kTextEncodingKSC_5601_92_Johab    EQU        $0641                ; KSC 5601-92 Johab annex
  133. kTextEncodingCNS_11643_92_P1    EQU        $0651                ; CNS 11643-1992 plane 1
  134. kTextEncodingCNS_11643_92_P2    EQU        $0652                ; CNS 11643-1992 plane 2
  135. kTextEncodingCNS_11643_92_P3    EQU        $0653                ; CNS 11643-1992 plane 3 (was plane 14 in 1986 version)
  136.                                                             ; ISO 2022 collections begin at 0x800
  137. kTextEncodingISO_2022_JP        EQU        $0820
  138. kTextEncodingISO_2022_JP_2        EQU        $0821
  139. kTextEncodingISO_2022_CN        EQU        $0830
  140. kTextEncodingISO_2022_CN_EXT    EQU        $0831
  141. kTextEncodingISO_2022_KR        EQU        $0840                ; EUC collections begin at 0x900
  142. kTextEncodingEUC_JP                EQU        $0920                ; ISO 646, 1-byte katakana, JIS 208, JIS 212
  143. kTextEncodingEUC_CN                EQU        $0930                ; ISO 646, GB 2312-80
  144. kTextEncodingEUC_TW                EQU        $0931                ; ISO 646, CNS 11643-1992 Planes 1-16
  145. kTextEncodingEUC_KR                EQU        $0940                ; ISO 646, KS C 5601-1987
  146.                                                             ; Misc standards begin at 0xA00
  147. kTextEncodingShiftJIS            EQU        $0A01                ; plain Shift-JIS
  148. kTextEncodingKOI8_R                EQU        $0A02                ; Russian internet standard
  149. kTextEncodingBig5                EQU        $0A03                ; Big-5 (has variants)
  150. kTextEncodingMacRomanLatin1        EQU        $0A04                ; Mac OS Roman permuted to align with ISO Latin-1
  151. kTextEncodingHZ_GB_2312            EQU        $0A05                ; HZ (RFC 1842, for Chinese mail & news)
  152.                                                             ; Other platform encodings
  153. kTextEncodingNextStepLatin        EQU        $0B01                ; NextStep encoding
  154.                                                             ; EBCDIC & IBM host encodings begin at 0xC00
  155. kTextEncodingEBCDIC_US            EQU        $0C01                ; basic EBCDIC-US
  156. kTextEncodingEBCDIC_CP037        EQU        $0C02                ; code page 037, extended EBCDIC (Latin-1 set) for US,Canada...
  157.                                                             ; Special value
  158. kTextEncodingMultiRun            EQU        $0FFF                ; Multi-encoding text with external run info
  159.                                                             ; The following are older names for backward compatibility
  160. kTextEncodingMacTradChinese        EQU        2
  161. kTextEncodingMacRSymbol            EQU        8
  162. kTextEncodingMacSimpChinese        EQU        25
  163. kTextEncodingMacGeez            EQU        28
  164. kTextEncodingMacEastEurRoman    EQU        29
  165. kTextEncodingMacUninterp        EQU        32
  166. ;  TextEncodingVariant type & values 
  167. ; typedef UInt32                         TextEncodingVariant
  168.  
  169.  
  170.                                                             ; Default TextEncodingVariant, for any TextEncodingBase
  171. kTextEncodingDefaultVariant        EQU        0                    ; Variants of kTextEncodingMacIcelandic                                                    
  172. kMacIcelandicStandardVariant    EQU        0                    ; 0xBB & 0xBC are fem./masc. ordinal indicators
  173. kMacIcelandicTrueTypeVariant    EQU        1                    ; 0xBB & 0xBC are fi/fl ligatures
  174.                                                             ; Variants of kTextEncodingMacJapanese
  175. kMacJapaneseStandardVariant        EQU        0
  176. kMacJapaneseStdNoVerticalsVariant EQU    1
  177. kMacJapaneseBasicVariant        EQU        2
  178. kMacJapanesePostScriptScrnVariant EQU    3
  179. kMacJapanesePostScriptPrintVariant EQU    4
  180. kMacJapaneseVertAtKuPlusTenVariant EQU    5                    ; Variant options for most Japanese encodings (MacJapanese, ShiftJIS, EUC-JP, ISO 2022-JP)    
  181.                                                             ; These can be OR-ed into the variant value in any combination
  182. kJapaneseNoOneByteKanaOption    EQU        $20
  183. kJapaneseUseAsciiBackslashOption EQU    $40                    ; Variants of kTextEncodingMacArabic
  184. kMacArabicStandardVariant        EQU        0                    ; 0xC0 is 8-spoke asterisk, 0x2A & 0xAA are asterisk (e.g. Cairo)
  185. kMacArabicTrueTypeVariant        EQU        1                    ; 0xC0 is asterisk, 0x2A & 0xAA are multiply signs (e.g. Baghdad)
  186. kMacArabicThuluthVariant        EQU        2                    ; 0xC0 is Arabic five-point star, 0x2A & 0xAA are multiply signs
  187. kMacArabicAlBayanVariant        EQU        3                    ; 8-spoke asterisk, multiply sign, Koranic ligatures & parens
  188.                                                             ; Variants of kTextEncodingMacFarsi
  189. kMacFarsiStandardVariant        EQU        0                    ; 0xC0 is 8-spoke asterisk, 0x2A & 0xAA are asterisk (e.g. Tehran)
  190. kMacFarsiTrueTypeVariant        EQU        1                    ; asterisk, multiply signs, Koranic ligatures, geometric shapes
  191.                                                             ; Variants of kTextEncodingMacHebrew
  192. kMacHebrewStandardVariant        EQU        0
  193. kMacHebrewFigureSpaceVariant    EQU        1                    ; Variants of Unicode & ISO 10646 encodings
  194. kUnicodeNoSubset                EQU        0
  195. kUnicodeNoCompatibilityVariant    EQU        1
  196. kUnicodeMaxDecomposedVariant    EQU        2
  197. kUnicodeNoComposedVariant        EQU        3
  198. kUnicodeNoCorporateVariant        EQU        4                    ; Variants of Big-5 encoding
  199. kBig5_BasicVariant                EQU        0
  200. kBig5_StandardVariant            EQU        1                    ; 0xC6A1-0xC7FC: kana, Cyrillic, enclosed numerics
  201. kBig5_ETenVariant                EQU        2                    ; adds kana, Cyrillic, radicals, etc with hi bytes C6-C8,F9
  202.                                                             ; The following are older names for backward compatibility
  203. kJapaneseStandardVariant        EQU        0
  204. kJapaneseStdNoVerticalsVariant    EQU        1
  205. kJapaneseBasicVariant            EQU        2
  206. kJapanesePostScriptScrnVariant    EQU        3
  207. kJapanesePostScriptPrintVariant    EQU        4
  208. kJapaneseVertAtKuPlusTenVariant    EQU        5                    ; kJapaneseStdNoOneByteKanaVariant = 6,    // replaced by kJapaneseNoOneByteKanaOption
  209.                                                             ; kJapaneseBasicNoOneByteKanaVariant = 7,    // replaced by kJapaneseNoOneByteKanaOption    
  210. kHebrewStandardVariant            EQU        0
  211. kHebrewFigureSpaceVariant        EQU        1
  212. ;  TextEncodingFormat type & values 
  213. ; typedef UInt32                         TextEncodingFormat
  214.  
  215.  
  216.                                                             ; Default TextEncodingFormat for any TextEncodingBase
  217. kTextEncodingDefaultFormat        EQU        0                    ; Formats for Unicode & ISO 10646
  218. kUnicode16BitFormat                EQU        0
  219. kUnicodeUTF7Format                EQU        1
  220. kUnicodeUTF8Format                EQU        2
  221. kUnicode32BitFormat                EQU        3
  222. ;  TextEncoding type 
  223. ; typedef UInt32                         TextEncoding
  224.  
  225. ;  name part selector for GetTextEncodingName
  226. ; typedef UInt32                         TextEncodingNameSelector
  227.  
  228.  
  229. kTextEncodingFullName            EQU        0
  230. kTextEncodingBaseName            EQU        1
  231. kTextEncodingVariantName        EQU        2
  232. kTextEncodingFormatName            EQU        3
  233. ;  Types used in conversion 
  234. TextEncodingRun            RECORD 0
  235. offset                     ds.l    1                ; offset: $0 (0)
  236. textEncoding             ds.l    1                ; offset: $4 (4)
  237. sizeof                     EQU *                    ; size:   $8 (8)
  238.                         ENDR
  239. ; typedef struct TextEncodingRun *        TextEncodingRunPtr
  240.  
  241. ; typedef struct TextEncodingRun *        ConstTextEncodingRunPtr
  242.  
  243. ScriptCodeRun            RECORD 0
  244. offset                     ds.l    1                ; offset: $0 (0)
  245. script                     ds.w    1                ; offset: $4 (4)
  246. sizeof                     EQU *                    ; size:   $6 (6)
  247.                         ENDR
  248. ; typedef struct ScriptCodeRun *        ScriptCodeRunPtr
  249.  
  250. ; typedef struct ScriptCodeRun *        ConstScriptCodeRunPtr
  251.  
  252. ; typedef UInt8 *                        TextPtr
  253.  
  254. ; typedef UInt8 *                        ConstTextPtr
  255.  
  256. ;  Basic types for Unicode characters and strings: 
  257. ; typedef UniChar *                        UniCharArrayPtr
  258.  
  259. ; typedef const UniChar *                ConstUniCharArrayPtr
  260.  
  261. ;  enums for TextEncoding Conversion routines
  262.  
  263. kTextScriptDontCare                EQU        -128
  264. kTextLanguageDontCare            EQU        -128
  265. kTextRegionDontCare                EQU        -128
  266. ;  struct for TECGetInfo
  267.  
  268. TECInfo                    RECORD 0
  269. format                     ds.w    1                ; offset: $0 (0)        ;  format code for this struct
  270. tecVersion                 ds.w    1                ; offset: $2 (2)        ;  TEC version in BCD, e.g. 0x0121 for 1.2.1
  271. tecTextConverterFeatures  ds.l    1                ; offset: $4 (4)        ;  bitmask indicating TEC features/fixes
  272. tecUnicodeConverterFeatures  ds.l 1                ; offset: $8 (8)        ;  bitmask indicating UnicodeConverter features/fixes
  273. tecTextCommonFeatures     ds.l    1                ; offset: $C (12)        ;  bitmask indicating TextCommon features/fixes
  274. tecTextEncodingsFolderName  ds    Str31            ; offset: $10 (16)        ;  localized name of Text Encodings folder (pascal string)
  275. tecExtensionFileName     ds        Str31            ; offset: $30 (48)        ;  localized name of TEC extension (pascal string)
  276. sizeof                     EQU *                    ; size:   $50 (80)
  277.                         ENDR
  278. ; typedef struct TECInfo *                TECInfoPtr
  279.  
  280. ; typedef TECInfoPtr *                    TECInfoHandle
  281.  
  282. ;  Value for TECInfo format code
  283.  
  284. kTECInfoCurrentFormat            EQU        1                    ; any future formats will just add fields at the end
  285.  
  286. ;   Defined feature/fix bits for tecUnicodeConverterFeatures field
  287. ;   Bit:                                Meaning if set:
  288. ;   ----                                ---------------
  289. ;   kTECKeepInfoFixBit                Unicode Converter no longer ignores other control flags if
  290. ;                                      kUnicodeKeepInfoBit is set. Bug fix.
  291. ;   kTECFallbackTextLengthFixBit        Unicode Converter honors the *srcConvLen and *destConvLen
  292. ;                                      returned by caller-supplied fallback handler for any status
  293. ;                                      it returns except for kTECUnmappableElementErr (previously
  294. ;                                      it only honored these values if noErr was returned). Bug fix.
  295.  
  296.  
  297.  
  298.  
  299. kTECKeepInfoFixBit                EQU        0
  300. kTECFallbackTextLengthFixBit    EQU        1
  301.  
  302. kTECKeepInfoFixMask                EQU        $00000001
  303. kTECFallbackTextLengthFixMask    EQU        $00000002
  304. ;  Prototypes for TextEncoding functions
  305.  
  306. ;
  307. ; pascal TextEncoding CreateTextEncoding(TextEncodingBase encodingBase, TextEncodingVariant encodingVariant, TextEncodingFormat encodingFormat)
  308. ;
  309.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  310.         IMPORT_CFM_FUNCTION CreateTextEncoding
  311.     ENDIF
  312.  
  313. ;
  314. ; pascal TextEncodingBase GetTextEncodingBase(TextEncoding encoding)
  315. ;
  316.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  317.         IMPORT_CFM_FUNCTION GetTextEncodingBase
  318.     ENDIF
  319.  
  320. ;
  321. ; pascal TextEncodingVariant GetTextEncodingVariant(TextEncoding encoding)
  322. ;
  323.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  324.         IMPORT_CFM_FUNCTION GetTextEncodingVariant
  325.     ENDIF
  326.  
  327. ;
  328. ; pascal TextEncodingFormat GetTextEncodingFormat(TextEncoding encoding)
  329. ;
  330.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  331.         IMPORT_CFM_FUNCTION GetTextEncodingFormat
  332.     ENDIF
  333.  
  334. ;
  335. ; pascal TextEncoding ResolveDefaultTextEncoding(TextEncoding encoding)
  336. ;
  337.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  338.         IMPORT_CFM_FUNCTION ResolveDefaultTextEncoding
  339.     ENDIF
  340.  
  341. ;
  342. ; extern OSStatus GetTextEncodingName(TextEncoding iEncoding, TextEncodingNameSelector iNamePartSelector, RegionCode iPreferredRegion, TextEncoding iPreferredEncoding, ByteCount iOutputBufLen, ByteCount *oNameLength, RegionCode *oActualRegion, TextEncoding *oActualEncoding, TextPtr oEncodingName)
  343. ;
  344.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  345.         IMPORT_CFM_FUNCTION GetTextEncodingName
  346.     ENDIF
  347.  
  348. ;
  349. ; pascal OSStatus TECGetInfo(TECInfoHandle *tecInfo)
  350. ;
  351.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  352.         IMPORT_CFM_FUNCTION TECGetInfo
  353.     ENDIF
  354.  
  355.  
  356. ;
  357. ; pascal OSStatus UpgradeScriptInfoToTextEncoding(ScriptCode iTextScriptID, LangCode iTextLanguageID, RegionCode iRegionID, ConstStr255Param iTextFontname, TextEncoding *oEncoding)
  358. ;
  359.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  360.         IMPORT_CFM_FUNCTION UpgradeScriptInfoToTextEncoding
  361.     ENDIF
  362.  
  363. ;
  364. ; pascal OSStatus RevertTextEncodingToScriptInfo(TextEncoding iEncoding, ScriptCode *oTextScriptID, LangCode *oTextLanguageID, Str255 oTextFontname)
  365. ;
  366.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  367.         IMPORT_CFM_FUNCTION RevertTextEncodingToScriptInfo
  368.     ENDIF
  369.  
  370.  
  371.     ENDIF ; __TEXTCOMMON__ 
  372.  
  373.